package com.xxxx.yoyo.service.impl;

import java.util.List;

import com.xxxx.yoyo.bean.Goods;
import com.xxxx.yoyo.bean.Item;
import com.xxxx.yoyo.bean.Order;
import com.xxxx.yoyo.dao.IItemDao;
import com.xxxx.yoyo.dao.impl.ItemDaoImpl;
import com.xxxx.yoyo.service.IGoodsService;
import com.xxxx.yoyo.service.IItemService;

public class ItemServiceImpl implements IItemService {

	private IItemDao itemDao = new ItemDaoImpl();
	private IGoodsService goodsService = new GoodsServiceImpl();
	
	/**
	 * 根据订单信息,把购买项加入到item表中
	 * @param order 订单
	 */
	@Override
	public void addItemsByOrder(Order order) {
		//获取购买项列表
		List<Item> itemList = order.getItemList();
		
		//获取订单id
		int orderId = order.getId();
		
		//遍历购买项列表
		for(int i = 0; i < itemList.size(); i++) {
			//获取购买项
			Item item = itemList.get(i);
			item.setOrderId(orderId);
			//把购买项添加到item表中
			itemDao.insertItem(item);
		}

	}

	/**
	 * 根据订单id获取购买项列表
	 * @param orderId 订单id
	 * @return 返回购买项列表
	 */
	@Override
	public List<Item> getItemListByOrderId(int orderId) {
		//这是具有简要信息的itemList, 没有宠物的具体信息
		List<Item> itemList = itemDao.selectItemListByOrderId(orderId);
		//遍历购买项列表
		for(int i = 0; i < itemList.size(); i++) {
			//获取购买项
			Item item = itemList.get(i);
			//获取宠物id
			int goodsId = item.getGoodId();
			//根据宠物id获取宠物信息
			Goods goods = goodsService.getGoodsById(goodsId);
			//把goods设置给item
			item.setGoods(goods);
		}
		return itemList;
	}

}
